package com.bbva.kyfb.kyfbdaohostimpl.converters;

import org.apache.commons.lang.StringUtils;

import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.inmft010_1_1_4.PeticionTransaccionInmft010_1_1_4;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt298_1_1_1.PeticionTransaccionTlsmt298_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt592_1_1_1.PeticionTransaccionTlsmt592_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt761_1_1_1.PeticionTransaccionTlsmt761_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt762_1_1_1.PeticionTransaccionTlsmt762_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt763_1_1_1.PeticionTransaccionTlsmt763_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt764_1_1_1.PeticionTransaccionTlsmt764_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt765_1_1_1.PeticionTransaccionTlsmt765_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt766_1_1_1.PeticionTransaccionTlsmt766_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt767_1_1_1.PeticionTransaccionTlsmt767_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt768_1_1_1.PeticionTransaccionTlsmt768_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt775_1_1_1.PeticionTransaccionTlsmt775_1_1_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt775_1_1_2.PeticionTransaccionTlsmt775_1_1_2;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt775_1_1_3.PeticionTransaccionTlsmt775_1_1_3;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt775_1_2_1.PeticionTransaccionTlsmt775_1_2_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt775_1_3_1.PeticionTransaccionTlsmt775_1_3_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt775_1_4_1.PeticionTransaccionTlsmt775_1_4_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt775_1_5_1.PeticionTransaccionTlsmt775_1_5_1;
import com.bbva.kyfb.kyfbdaohostimpl.servicios.host.tlsmt775_1_6_1.PeticionTransaccionTlsmt775_1_6_1;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.ApoderadoEmpresasFirmInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.ConsultaAptitudMifidInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.ConsultaDatosClienteInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.ConsultaSituacionFicherosInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.ConsultarFirmatesFicheroInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.DetalleFicheroInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.EliminarFicheroPendienteInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.EmpresasFirmInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.FicheroPendienteFirmaInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.FicherosPendienteEmpresaInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.FicherosPendientePorEmpresaNifInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.FirmaFicheroInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.FirmarFicheroPendienteInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.OrdenPendienteFirmaInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.OrdenPendienteFirmaRefNifInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.OrdenPendienteFirmaReferenciaExternaInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.RegistrarOrdenPendienteFirmaInDto;
import com.bbva.kyfb.kyfbdto.firmas.sistemasHost.UsuariosFirmantesOrdenInDto;
import com.bbva.kyfb.kyfbutils.constantes.UtilFO;
import com.bbva.kyfb.kyfbutils.host.Constants;

/**
 * The Class TransaccionDtoConverter.
 *
 * @author xe22570
 */
public class TransaccionDtoConverter {

	/**
	 * Empresas firm in dto to peticion761.
	 *
	 * @param empresasFirmInDto the empresas firm in dto
	 * @return the peticion transaccion tlsmt761_1_1_1
	 */
	public static PeticionTransaccionTlsmt761_1_1_1 EmpresasFirmInDtoToPeticion761(final EmpresasFirmInDto empresasFirmInDto){
		final PeticionTransaccionTlsmt761_1_1_1 peticion = new PeticionTransaccionTlsmt761_1_1_1();

		peticion.setBancsbSolici(empresasFirmInDto.getBancSolici());
		peticion.setCampo_12_hueco2(StringUtils.rightPad(empresasFirmInDto.getHuecoTres(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setCanalSolici(empresasFirmInDto.getCanalSolici());
		peticion.setCanalSstt(empresasFirmInDto.getCanal());
		peticion.setComrefex(StringUtils.rightPad(empresasFirmInDto.getTipoFirma(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setFormatoAsunto(StringUtils.leftPad(empresasFirmInDto.getFormatoAsunto(),Constants.FORMATO_ASUNTO_MIN_LENGTH, "0"));
		peticion.setHueco1(StringUtils.rightPad(empresasFirmInDto.getHuecoUno(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setHueco2(StringUtils.rightPad(empresasFirmInDto.getHuecoDos(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setRefeexte(StringUtils.rightPad(empresasFirmInDto.getReferenciaExterna(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setRefeexteSolici(StringUtils.rightPad(empresasFirmInDto.getRefeExtSolici(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setTipoAccion(empresasFirmInDto.getTipoAccion());
		peticion.setVersionSstt(StringUtils.leftPad(empresasFirmInDto.getVersionSstt(),Constants.VERSIONSSTT_MIN_LENGTH, "0"));

		return peticion;
	}

	/**
	 * Empresas firm in dto to peticion762.
	 *
	 * @param apoderadoEmpresasFirmInDto the apoderado empresas firm in dto
	 * @return the peticion transaccion tlsmt762_1_1_1
	 */
	public static PeticionTransaccionTlsmt762_1_1_1 EmpresasFirmInDtoToPeticion762(final ApoderadoEmpresasFirmInDto apoderadoEmpresasFirmInDto){
		final PeticionTransaccionTlsmt762_1_1_1 peticion = new PeticionTransaccionTlsmt762_1_1_1();

		peticion.setBancsbSolici(apoderadoEmpresasFirmInDto.getBancSolici());
		peticion.setCampo_11_hueco2(StringUtils.rightPad(apoderadoEmpresasFirmInDto.getHuecoTres(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setCdnitrSolici(StringUtils.rightPad(apoderadoEmpresasFirmInDto.getCdnitrSolici(),Constants.COD_CDNI_MIN_LENGTH));
		peticion.setCanalSstt(apoderadoEmpresasFirmInDto.getCanal());
		peticion.setComrefex(StringUtils.rightPad(apoderadoEmpresasFirmInDto.getTipoFirma(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setFormatoAsunto(StringUtils.leftPad(apoderadoEmpresasFirmInDto.getFormatoAsunto(),Constants.FORMATO_ASUNTO_MIN_LENGTH, "0"));
		peticion.setHueco1(StringUtils.rightPad(apoderadoEmpresasFirmInDto.getHuecoUno(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setHueco2(StringUtils.rightPad(apoderadoEmpresasFirmInDto.getHuecoDos(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setRefeexte(StringUtils.rightPad(apoderadoEmpresasFirmInDto.getReferenciaExterna(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setTipoAccion(apoderadoEmpresasFirmInDto.getTipoAccion());
		peticion.setVersionSstt(StringUtils.leftPad(apoderadoEmpresasFirmInDto.getVersionSstt(),Constants.VERSIONSSTT_MIN_LENGTH, "0"));

		return peticion;
	}

	/**
	 * Consulta productos in dto to peticion298.
	 *
	 * @param consultaDatosClienteInDto the consulta datos cliente in dto
	 * @return the peticion transaccion tlsmt298_1_1_1
	 */
	public static PeticionTransaccionTlsmt298_1_1_1 ConsultaProductosInDtoToPeticion298(final ConsultaDatosClienteInDto consultaDatosClienteInDto){
		final PeticionTransaccionTlsmt298_1_1_1 peticion = new PeticionTransaccionTlsmt298_1_1_1();

		peticion.setCodBancsb(consultaDatosClienteInDto.getCodBancsb());
		peticion.setCodCanaldi(consultaDatosClienteInDto.getCodCanaldi());
		peticion.setCodCcontr(consultaDatosClienteInDto.getCodCcontr());
		peticion.setCodCdepen(consultaDatosClienteInDto.getCodCdepen());
		peticion.setCodCfolio(consultaDatosClienteInDto.getCodCfolio());
		peticion.setCodCofici(consultaDatosClienteInDto.getCodCofici());
		peticion.setCodRefeexte(StringUtils.rightPad(consultaDatosClienteInDto.getCodRefeexte(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setXtiTipocons(StringUtils.rightPad(consultaDatosClienteInDto.getXtiTipocons(),Constants.XTI_VARS_MIN_LENGTH));

		return peticion;
	}

	/**
	 * Consulta situacion ficheros in dto to peticion592.
	 *
	 * @param consultaSituacionFicheroInDto the consulta situacion fichero in dto
	 * @return the peticion transaccion tlsmt592_1_1_1
	 */
	public static PeticionTransaccionTlsmt592_1_1_1 ConsultaSituacionFicherosInDtoToPeticion592(final ConsultaSituacionFicherosInDto consultaSituacionFicheroInDto) {
		final PeticionTransaccionTlsmt592_1_1_1 peticion = new PeticionTransaccionTlsmt592_1_1_1();

		peticion.setCanalSstt(consultaSituacionFicheroInDto.getCanalSstt());
		peticion.setRefeexte(StringUtils.rightPad(consultaSituacionFicheroInDto.getRefeexte(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setHhmmsscc(consultaSituacionFicheroInDto.getHhmmsscc());
		peticion.setFirmas(StringUtils.rightPad(consultaSituacionFicheroInDto.getFirmas(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setVersionSstt(consultaSituacionFicheroInDto.getVersionSstt());
		peticion.setHueco1(StringUtils.rightPad(consultaSituacionFicheroInDto.getHueco1(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setComrefex(StringUtils.rightPad(consultaSituacionFicheroInDto.getComrefex(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setTipoAccion(consultaSituacionFicheroInDto.getTipoAccion());
		peticion.setFormatoAsunto(consultaSituacionFicheroInDto.getFormatoAsunto());
		peticion.setBancsbSolici(consultaSituacionFicheroInDto.getBancsbSolici());
		peticion.setCanalSolici(consultaSituacionFicheroInDto.getCanalSolici());
		peticion.setRefeexteSolici(StringUtils.rightPad(consultaSituacionFicheroInDto.getRefeexteSolici(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setServicioSolici(consultaSituacionFicheroInDto.getServicioSolici());
		peticion.setFechaDesde(consultaSituacionFicheroInDto.getFechaDesde());
		peticion.setFechaHasta(consultaSituacionFicheroInDto.getFechaHasta());
		peticion.setImporteDesde(consultaSituacionFicheroInDto.getImporteDesde());
		peticion.setImporteHasta(consultaSituacionFicheroInDto.getImporteHasta());
		peticion.setDivisa(StringUtils.rightPad(consultaSituacionFicheroInDto.getDivisa(),Constants.FORMATO_DIVISA_MIN_LENGTH));
		peticion.setHueco2(StringUtils.rightPad(consultaSituacionFicheroInDto.getHueco2(),Constants.FORMATO_HUECO_MIN_LENGTH));

		return peticion;
	}

	/**
	 * Consulta detalle fichero in dto to peticion765.
	 *
	 * @param detalleFicheroInDto the detalle fichero in dto
	 * @return the peticion transaccion tlsmt765_1_1_1
	 */
	public static PeticionTransaccionTlsmt765_1_1_1 ConsultaDetalleFicheroInDtoToPeticion765(final DetalleFicheroInDto detalleFicheroInDto){
		final PeticionTransaccionTlsmt765_1_1_1 peticion = new PeticionTransaccionTlsmt765_1_1_1();
		peticion.setCanalSstt(detalleFicheroInDto.getCanalSstt());
		peticion.setRefeexte(StringUtils.rightPad(detalleFicheroInDto.getRefeexte(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setHueco1(StringUtils.rightPad(detalleFicheroInDto.getHueco1(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setVersionSstt(detalleFicheroInDto.getVersionSstt());
		peticion.setHueco2(StringUtils.rightPad(detalleFicheroInDto.getHueco2(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setComrefex(StringUtils.rightPad(detalleFicheroInDto.getComrefex(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setTipoAccion(detalleFicheroInDto.getTipoAccion());
		peticion.setFormatoAsunto(detalleFicheroInDto.getFormatoAsunto());
		peticion.setBancsbSolici(detalleFicheroInDto.getBancsbSolici());
		peticion.setTimestampSolic(detalleFicheroInDto.getTimestampSolic());
		peticion.setHueco3(StringUtils.rightPad(detalleFicheroInDto.getHueco3(),Constants.FORMATO_HUECO_MIN_LENGTH));
		return peticion;
	}

	/**
	 * Anular ultima firma in dto to peticion775.
	 *
	 * @param firmaFicheroInDto the firma fichero in dto
	 * @return the peticion transaccion tlsmt775_1_6_1
	 */
	public static PeticionTransaccionTlsmt775_1_6_1 AnularUltimaFirmaInDtoToPeticion775(final FirmaFicheroInDto firmaFicheroInDto) {
		final PeticionTransaccionTlsmt775_1_6_1 peticion = new PeticionTransaccionTlsmt775_1_6_1();

		peticion.setCanalEntr(firmaFicheroInDto.getCanalEntr());
		peticion.setRefeexteEntr(firmaFicheroInDto.getRefeexteEntr());
		peticion.setBancsbEntr(firmaFicheroInDto.getBancsbEntr());
		peticion.setTimestampEntr(UtilFO.convertirFechasBBDDToTx(firmaFicheroInDto.getTimestampEntr()));
		peticion.setCdnitrEntr(firmaFicheroInDto.getCdnitrEntr());

		return peticion;
	}

	/**
	 * Consulta usuarios firmantes orden in dto to peticion775.
	 *
	 * @param usuariosFirmantesOrdenInDto the usuarios firmantes orden in dto
	 * @return the peticion transaccion tlsmt775_1_5_1
	 */
	public static PeticionTransaccionTlsmt775_1_5_1 ConsultaUsuariosFirmantesOrdenInDtoToPeticion775(
			final UsuariosFirmantesOrdenInDto usuariosFirmantesOrdenInDto) {

		final PeticionTransaccionTlsmt775_1_5_1 peticion = new PeticionTransaccionTlsmt775_1_5_1();

		peticion.setBancsbEntr(usuariosFirmantesOrdenInDto.getBancsbEntr());
		peticion.setCanalEntr(usuariosFirmantesOrdenInDto.getCanalEntr());
		peticion.setRefeexteEntr(usuariosFirmantesOrdenInDto.getRefeexteEntr().substring(8, 16));
		peticion.setTimestampEntr(StringUtils.rightPad(usuariosFirmantesOrdenInDto.getTimestampEntr(), Constants.FORMATO_TIMESTAMPSOLIC_MIN_LENGTH , '0'));

		return peticion;
	}

	/**
	 * Firma orden pendiente in dto to peticion775.
	 *
	 * @param ordenPendienteInDto the orden pendiente in dto
	 * @return the peticion transaccion tlsmt775_1_4_1
	 */
	public static PeticionTransaccionTlsmt775_1_4_1 FirmaOrdenPendienteInDtoToPeticion775(final OrdenPendienteFirmaInDto ordenPendienteInDto) {

		final PeticionTransaccionTlsmt775_1_4_1 peticion = new PeticionTransaccionTlsmt775_1_4_1();

		peticion.setBancsbEntr(ordenPendienteInDto.getBancsbEntr());
		peticion.setCanalEntr(ordenPendienteInDto.getCanalEntr());
		peticion.setCdnitrEntr(ordenPendienteInDto.getCdnitrEntr());
		peticion.setRefeexteEntr(ordenPendienteInDto.getRefeexteEntr());
		peticion.setTimestampEntr(UtilFO.convertirFechasBBDDToTx(ordenPendienteInDto.getTimestampEntr()));


		return peticion;
	}

	/**
	 * Eliminar orden pendiente in dto to peticion775.
	 *
	 * @param ordenPendienteInDto the orden pendiente in dto
	 * @return the peticion transaccion tlsmt775_1_3_1
	 */
	public static PeticionTransaccionTlsmt775_1_3_1 EliminarOrdenPendienteInDtoToPeticion775(final OrdenPendienteFirmaInDto ordenPendienteInDto) {

		final PeticionTransaccionTlsmt775_1_3_1 peticion = new PeticionTransaccionTlsmt775_1_3_1();

		peticion.setBancsbEntr(ordenPendienteInDto.getBancsbEntr());
		peticion.setCanalEntr(ordenPendienteInDto.getCanalEntr());
		peticion.setCdnitrEntr(ordenPendienteInDto.getCdnitrEntr());
		peticion.setRefeexteEntr(ordenPendienteInDto.getRefeexteEntr());
		peticion.setTimestampEntr(StringUtils.rightPad(UtilFO.convertirFechasBBDDToTx(ordenPendienteInDto.getTimestampEntr()), Constants.FORMATO_TIMESTAMPSOLIC_MIN_LENGTH, Constants.CODIGO_TRANSACCION_OK));

		return peticion;
	}

	/**
	 * Consultar ordenes pendientes firma in dto to peticion775.
	 *
	 * @param ordenPendienteFirmaReferenciaExternaInDto the orden pendiente firma referencia externa in dto
	 * @return the peticion transaccion tlsmt775_1_2_1
	 */
	public static PeticionTransaccionTlsmt775_1_2_1 ConsultarOrdenesPendientesFirmaInDtoToPeticion775(final OrdenPendienteFirmaReferenciaExternaInDto ordenPendienteFirmaReferenciaExternaInDto) {

		final PeticionTransaccionTlsmt775_1_2_1 peticion = new PeticionTransaccionTlsmt775_1_2_1();
		peticion.setBancsbEntr(ordenPendienteFirmaReferenciaExternaInDto.getBancsbEntr());
		peticion.setCanalEntr(ordenPendienteFirmaReferenciaExternaInDto.getCanalEntr());
		peticion.setFecdesEntr(ordenPendienteFirmaReferenciaExternaInDto.getFecdesEntr());
		peticion.setFechasEntr(ordenPendienteFirmaReferenciaExternaInDto.getFechasEntr());
		peticion.setImpdesEntr(ordenPendienteFirmaReferenciaExternaInDto.getImpdesEntr());
		peticion.setImphasEntr(ordenPendienteFirmaReferenciaExternaInDto.getImphasEntr());
		peticion.setRefeexteEntr(ordenPendienteFirmaReferenciaExternaInDto.getRefeexteEntr());
		peticion.setTipserEntr(ordenPendienteFirmaReferenciaExternaInDto.getTipserEntr());

		return peticion;
	}

	/**
	 * Consultar ordenes pendientes firma nif in dto to peticion775.
	 *
	 * @param ordenPendienteFirmaInDto the orden pendiente firma in dto
	 * @return the peticion transaccion tlsmt775_1_1_3
	 */
	public static PeticionTransaccionTlsmt775_1_1_3 ConsultarOrdenesPendientesFirmaNifInDtoToPeticion775(final OrdenPendienteFirmaRefNifInDto ordenPendienteFirmaInDto) {
		final PeticionTransaccionTlsmt775_1_1_3 peticion = new PeticionTransaccionTlsmt775_1_1_3();

		peticion.setCodCanalEntr(ordenPendienteFirmaInDto.getCodCanalEntr());
		peticion.setCodRefextEntr(ordenPendienteFirmaInDto.getCodRefextEntr());
		peticion.setCodNifapoEntr(ordenPendienteFirmaInDto.getCodNifapoEntr());
		peticion.setCodBancsbEntr(ordenPendienteFirmaInDto.getCodBancsbEntr());
		peticion.setFecFecdesEntr(ordenPendienteFirmaInDto.getFecFecdesEntr());
		peticion.setFecFechasEntr(ordenPendienteFirmaInDto.getFecFechasEntr());
		peticion.setImpImpdesEntr(ordenPendienteFirmaInDto.getImpImpdesEntr());
		peticion.setImpImphasEntr(ordenPendienteFirmaInDto.getImpImphasEntr());
		peticion.setCodTipserEntr(ordenPendienteFirmaInDto.getCodTipserEntr());
		peticion.setFiller(StringUtils.rightPad(ordenPendienteFirmaInDto.getFiller(),Constants.FORMATO_FILLER_MIN_LENGTH));

		return peticion;
	}

	/**
	 * Registrar fichero pendiente firma in dto to peticion775.
	 *
	 * @param ficheroPendienteFirmaInDto the fichero pendiente firma in dto
	 * @return the peticion transaccion tlsmt775_1_1_2
	 */
	public static PeticionTransaccionTlsmt775_1_1_2 RegistrarFicheroPendienteFirmaInDtoToPeticion775(final FicheroPendienteFirmaInDto ficheroPendienteFirmaInDto) {
		final PeticionTransaccionTlsmt775_1_1_2 peticion = new PeticionTransaccionTlsmt775_1_1_2();

		peticion.setCanalEntr(ficheroPendienteFirmaInDto.getCanalEntr());
		peticion.setRefeexteEntr(ficheroPendienteFirmaInDto.getRefeexteEntr());
		peticion.setBancsbEntr(ficheroPendienteFirmaInDto.getBancsbEntr());
		peticion.setTimestampEntr(ficheroPendienteFirmaInDto.getTimestampEntr());
		peticion.setAsuntoEntr(ficheroPendienteFirmaInDto.getAsuntoEntr());
		peticion.setImporteEntr(ficheroPendienteFirmaInDto.getImpomaxEnt());
		peticion.setDivisaEntr(ficheroPendienteFirmaInDto.getDivisaEntr());
		peticion.setServicioEntr(ficheroPendienteFirmaInDto.getServicioEntr());
		peticion.setFprocesoEntr(ficheroPendienteFirmaInDto.getFprocesoEntr());
		peticion.setSubservEntr(ficheroPendienteFirmaInDto.getSubservEntr());
		peticion.setIdsercliEntr(StringUtils.rightPad(ficheroPendienteFirmaInDto.getIdsercliEntr(),Constants.FORMATO_NOM_FICHERO_MIN_LENGTH));
		peticion.setOrdenesEntr(ficheroPendienteFirmaInDto.getOrdenesEntr());
		peticion.setImpomaxEnt(ficheroPendienteFirmaInDto.getImpomaxEnt());

		return peticion;
	}

	/**
	 * Registrar orden pendiente firma in dto to peticion775.
	 *
	 * @param registrarOrdenPendienteFirmaInDto the registrar orden pendiente firma in dto
	 * @return the peticion transaccion tlsmt775_1_1_1
	 */
	public static PeticionTransaccionTlsmt775_1_1_1 RegistrarOrdenPendienteFirmaInDtoToPeticion775(final RegistrarOrdenPendienteFirmaInDto registrarOrdenPendienteFirmaInDto) {
		final PeticionTransaccionTlsmt775_1_1_1 peticion = new PeticionTransaccionTlsmt775_1_1_1();

		peticion.setCanalEntr(registrarOrdenPendienteFirmaInDto.getCanalEntr());
		peticion.setRefeexteEntr(registrarOrdenPendienteFirmaInDto.getRefeexteEntr());
		peticion.setBancsbEntr(registrarOrdenPendienteFirmaInDto.getBancsbEntr());
		peticion.setTimestampEntr(registrarOrdenPendienteFirmaInDto.getTimestampEntr());
		peticion.setNumitemEntr(registrarOrdenPendienteFirmaInDto.getNumitemEntr());
		peticion.setProdservEntr(registrarOrdenPendienteFirmaInDto.getProdservEntr());
		peticion.setSubproduEntr(registrarOrdenPendienteFirmaInDto.getSubproduEntr());
		peticion.setAsuntoEntr(registrarOrdenPendienteFirmaInDto.getAsuntoEntr());
		peticion.setImporteEntr(registrarOrdenPendienteFirmaInDto.getImporteEntr());
		peticion.setDivisaEntr(registrarOrdenPendienteFirmaInDto.getDivisaEntr());
		peticion.setServicioEntr(registrarOrdenPendienteFirmaInDto.getServicioEntr());
		peticion.setFprocesoEntr(registrarOrdenPendienteFirmaInDto.getFprocesoEntr());
		peticion.setSubservEntr(registrarOrdenPendienteFirmaInDto.getSubservEntr());

		return peticion;
	}

	/**
	 * Consulta usuarios firmantes in dto to peticion768.
	 *
	 * @param consultarFirmatesFicheroInDto the consultar firmates fichero in dto
	 * @return the peticion transaccion tlsmt768_1_1_1
	 */
	public static PeticionTransaccionTlsmt768_1_1_1 ConsultaUsuariosFirmantesInDtoToPeticion768(final ConsultarFirmatesFicheroInDto consultarFirmatesFicheroInDto) {
		final PeticionTransaccionTlsmt768_1_1_1 peticion = new PeticionTransaccionTlsmt768_1_1_1();

		peticion.setCanalSstt(consultarFirmatesFicheroInDto.getCanalSstt());
		peticion.setRefeexte(StringUtils.rightPad(consultarFirmatesFicheroInDto.getRefeexte(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setHueco1(StringUtils.rightPad(consultarFirmatesFicheroInDto.getHueco1(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setVersionSstt(StringUtils.leftPad(consultarFirmatesFicheroInDto.getVersionSstt(), Constants.VERSIONSSTT_MIN_LENGTH, "0"));
		peticion.setHueco2(StringUtils.rightPad(consultarFirmatesFicheroInDto.getHueco2(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setComrefex(StringUtils.rightPad(consultarFirmatesFicheroInDto.getComrefex(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setTipoAccion(consultarFirmatesFicheroInDto.getTipoAccion());
		peticion.setFormatoAsunto(StringUtils.leftPad(consultarFirmatesFicheroInDto.getFormatoAsunto(), Constants.FORMATO_ASUNTO_MIN_LENGTH, '0'));
		peticion.setBancsbSolici(consultarFirmatesFicheroInDto.getBancsbSolici());
		peticion.setTimestampSolic(StringUtils.rightPad(consultarFirmatesFicheroInDto.getTimestampSolic(), Constants.FORMATO_TIMESTAMPSOLIC_MIN_LENGTH , '0'));
		peticion.setHueco3(StringUtils.rightPad(consultarFirmatesFicheroInDto.getHueco3(),Constants.FORMATO_HUECO_MIN_LENGTH));

		return peticion;
	}

	/**
	 * Firmar ficheros pendientes in dto to peticion767.
	 *
	 * @param firmarFicheroPendienteInDto the firmar fichero pendiente in dto
	 * @return the peticion transaccion tlsmt767_1_1_1
	 */
	public static PeticionTransaccionTlsmt767_1_1_1 FirmarFicherosPendientesInDtoToPeticion767(final FirmarFicheroPendienteInDto firmarFicheroPendienteInDto) {
		final PeticionTransaccionTlsmt767_1_1_1 peticion = new PeticionTransaccionTlsmt767_1_1_1();

		peticion.setCanalSstt(firmarFicheroPendienteInDto.getCanalSstt());
		peticion.setRefeexte(StringUtils.rightPad(firmarFicheroPendienteInDto.getRefeexte(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setHueco1(StringUtils.rightPad(firmarFicheroPendienteInDto.getHueco1(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setVersionSstt(StringUtils.leftPad(firmarFicheroPendienteInDto.getVersionSstt(),Constants.VERSIONSSTT_MIN_LENGTH, "0"));
		peticion.setHueco2(StringUtils.rightPad(firmarFicheroPendienteInDto.getHueco2(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setComrefex(StringUtils.rightPad(firmarFicheroPendienteInDto.getComrefex(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setTipoAccion(firmarFicheroPendienteInDto.getTipoAccion());
		peticion.setFormatoAsunto(StringUtils.leftPad(firmarFicheroPendienteInDto.getFormatoAsunto(),Constants.FORMATO_ASUNTO_MIN_LENGTH, "0"));
		peticion.setBancsbSolici(firmarFicheroPendienteInDto.getBancsbSolici());
		peticion.setTimestampSolic(UtilFO.convertirFechasBBDDToTx(firmarFicheroPendienteInDto.getTimestampSolic()));
		peticion.setDniSolici(StringUtils.rightPad(firmarFicheroPendienteInDto.getDniSolici(),Constants.FORMATO_DNI_MIN_LENGTH));
		peticion.setCertifSolici(StringUtils.rightPad(firmarFicheroPendienteInDto.getCertifSolici(),Constants.FORMATO_NOM_FICHERO_MIN_LENGTH));
		peticion.setHueco3(StringUtils.rightPad(firmarFicheroPendienteInDto.getHueco3(),Constants.FORMATO_HUECO_MIN_LENGTH));

		return peticion;
	}

	/**
	 * Eliminar ficheros pendientes in dto to peticion766.
	 *
	 * @param EliminarFicheroPendienteInDto the eliminar fichero pendiente in dto
	 * @return the peticion transaccion tlsmt766_1_1_1
	 */
	public static PeticionTransaccionTlsmt766_1_1_1 EliminarFicherosPendientesInDtoToPeticion766(final EliminarFicheroPendienteInDto EliminarFicheroPendienteInDto) {
		final PeticionTransaccionTlsmt766_1_1_1 peticion = new PeticionTransaccionTlsmt766_1_1_1();

		peticion.setCanalSstt(EliminarFicheroPendienteInDto.getCanalSstt());
		peticion.setRefeexte(StringUtils.rightPad(EliminarFicheroPendienteInDto.getRefeexte(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setHueco1(StringUtils.rightPad(EliminarFicheroPendienteInDto.getHueco1(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setVersionSstt(StringUtils.leftPad(EliminarFicheroPendienteInDto.getVersionSstt(), Constants.VERSIONSSTT_MIN_LENGTH, '0'));
		peticion.setHueco2(StringUtils.rightPad(EliminarFicheroPendienteInDto.getHueco2(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setComrefex(StringUtils.rightPad(EliminarFicheroPendienteInDto.getComrefex(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setTipoAccion(EliminarFicheroPendienteInDto.getTipoAccion());
		peticion.setFormatoAsunto(StringUtils.leftPad(EliminarFicheroPendienteInDto.getFormatoAsunto(),Constants.FORMATO_ASUNTO_MIN_LENGTH,"0"));
		peticion.setBancsbSolici(EliminarFicheroPendienteInDto.getBancsbSolici());
		peticion.setTimestampSolic(UtilFO.convertirFechasBBDDToTx(EliminarFicheroPendienteInDto.getTimestampSolic()));
		peticion.setDniSolici(StringUtils.rightPad(EliminarFicheroPendienteInDto.getDniSolici(),Constants.FORMATO_DNI_MIN_LENGTH));
		peticion.setClienteSolici(EliminarFicheroPendienteInDto.getClienteSolici());
		peticion.setHueco3(StringUtils.rightPad(EliminarFicheroPendienteInDto.getHueco3(),Constants.FORMATO_HUECO_MIN_LENGTH));

		return peticion;
	}

	/**
	 * Consulta ficheros pendiente in dto to peticion763.
	 *
	 * @param ficherosPendienteEmpresaInDto the ficheros pendiente empresa in dto
	 * @return the peticion transaccion tlsmt763_1_1_1
	 */
	public static PeticionTransaccionTlsmt763_1_1_1 ConsultaFicherosPendienteInDtoToPeticion763(final FicherosPendienteEmpresaInDto ficherosPendienteEmpresaInDto) {
		final PeticionTransaccionTlsmt763_1_1_1 peticion = new PeticionTransaccionTlsmt763_1_1_1();

		peticion.setCanalSstt(ficherosPendienteEmpresaInDto.getCanalSstt());
		peticion.setRefeexte(StringUtils.rightPad(ficherosPendienteEmpresaInDto.getRefeexte(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setHueco1(StringUtils.rightPad(ficherosPendienteEmpresaInDto.getHueco1(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setVersionSstt(StringUtils.leftPad(ficherosPendienteEmpresaInDto.getVersionSstt(), Constants.VERSIONSSTT_MIN_LENGTH, '0'));
		peticion.setHueco2(StringUtils.rightPad(ficherosPendienteEmpresaInDto.getHueco2(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setComrefex(StringUtils.rightPad(ficherosPendienteEmpresaInDto.getComrefex(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setTipoAccion(ficherosPendienteEmpresaInDto.getTipoAccion());
		peticion.setFormatoAsunto(StringUtils.leftPad(ficherosPendienteEmpresaInDto.getFormatoAsunto(), Constants.FORMATO_ASUNTO_MIN_LENGTH, '0'));
		peticion.setBancsbSolici(ficherosPendienteEmpresaInDto.getBancsbSolici());
		peticion.setCdnitrSolici(StringUtils.rightPad(ficherosPendienteEmpresaInDto.getCdnitrSolici(),Constants.FORMATO_DNI_MIN_LENGTH));
		peticion.setCclienSolici(ficherosPendienteEmpresaInDto.getCclienSolici());
		peticion.setCanalSolici(ficherosPendienteEmpresaInDto.getCanalSolici());
		peticion.setRefeexteSolici(StringUtils.rightPad(ficherosPendienteEmpresaInDto.getRefeexteSolici(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setFecdesSolici(ficherosPendienteEmpresaInDto.getFecdesSolici());
		peticion.setFechasSolici(ficherosPendienteEmpresaInDto.getFechasSolici());
		peticion.setImpdesSolici(ficherosPendienteEmpresaInDto.getImpdesSolici());
		peticion.setImphasSolici(ficherosPendienteEmpresaInDto.getImphasSolici());
		peticion.setTipserSolici(ficherosPendienteEmpresaInDto.getTipserSolici());
		peticion.setHueco3(StringUtils.rightPad(ficherosPendienteEmpresaInDto.getHueco3(),Constants.FORMATO_HUECO_MIN_LENGTH));

		return peticion;
	}

	/**
	 * Consulta ficheros pendiente nif in dto to peticion764.
	 *
	 * @param ficherosPendientePorEmpresaNifInDto the ficheros pendiente por empresa nif in dto
	 * @return the peticion transaccion tlsmt764_1_1_1
	 */
	public static PeticionTransaccionTlsmt764_1_1_1 ConsultaFicherosPendienteNifInDtoToPeticion764(final FicherosPendientePorEmpresaNifInDto ficherosPendientePorEmpresaNifInDto) {
		final PeticionTransaccionTlsmt764_1_1_1 peticion = new PeticionTransaccionTlsmt764_1_1_1();


		peticion.setCanalSstt(ficherosPendientePorEmpresaNifInDto.getCanalSstt());
		peticion.setRefeexte(StringUtils.rightPad(ficherosPendientePorEmpresaNifInDto.getRefeexte(),Constants.REFERENCIA_EXTERNA_MIN_LENGTH));
		peticion.setHueco1(StringUtils.rightPad(ficherosPendientePorEmpresaNifInDto.getHueco1(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setVersionSstt(StringUtils.leftPad(ficherosPendientePorEmpresaNifInDto.getVersionSstt(), Constants.VERSIONSSTT_MIN_LENGTH, "0"));
		peticion.setHueco2(StringUtils.rightPad(ficherosPendientePorEmpresaNifInDto.getHueco2(),Constants.FORMATO_HUECO_MIN_LENGTH));
		peticion.setComrefex(StringUtils.rightPad(ficherosPendientePorEmpresaNifInDto.getComrefex(),Constants.COMREFEX_MIN_LENGTH));
		peticion.setTipoAccion(ficherosPendientePorEmpresaNifInDto.getTipoAccion());
		peticion.setFormatoAsunto(ficherosPendientePorEmpresaNifInDto.getFormatoAsunto());
		peticion.setBancsbSolici(ficherosPendientePorEmpresaNifInDto.getBancsbSolici());
		peticion.setDniSolici(StringUtils.rightPad(ficherosPendientePorEmpresaNifInDto.getDniSolici(),Constants.FORMATO_DNI_MIN_LENGTH));
		peticion.setCclienSolici(ficherosPendientePorEmpresaNifInDto.getCclienSolici());
		peticion.setCclienrSolici(ficherosPendientePorEmpresaNifInDto.getCclienrSolici());
		peticion.setFechaDesde(ficherosPendientePorEmpresaNifInDto.getFechaDesde());
		peticion.setFechaHasta(ficherosPendientePorEmpresaNifInDto.getFechaHasta());
		peticion.setImporteDesde(ficherosPendientePorEmpresaNifInDto.getImporteDesde());
		peticion.setImporteHasta(ficherosPendientePorEmpresaNifInDto.getImporteHasta());
		peticion.setTipoServicio(ficherosPendientePorEmpresaNifInDto.getTipoServicio());
		peticion.setHueco3(StringUtils.rightPad(ficherosPendientePorEmpresaNifInDto.getHueco3(),Constants.FORMATO_HUECO_MAX_LENGTH));

		return peticion;
	}

	/**
	 * Consulta aptitud mifid to peticion010.
	 *
	 * @param consultaAptitudMifidInDto the consulta aptitud mifid in dto
	 * @return the peticion transaccion inmft010_1_1_2
	 */
	public static PeticionTransaccionInmft010_1_1_4 ConsultaAptitudMifidToPeticion010(final ConsultaAptitudMifidInDto consultaAptitudMifidInDto) {
		final PeticionTransaccionInmft010_1_1_4 peticion = new PeticionTransaccionInmft010_1_1_4();

		peticion.setCodBancsb(consultaAptitudMifidInDto.getCodBancsb());
		peticion.setCodCclien(consultaAptitudMifidInDto.getCodCclien());
		peticion.setCodFamilimf(StringUtils.rightPad(consultaAptitudMifidInDto.getCodFamilimf(),Constants.COD_FAMILIA_MIN_LENGTH));
		peticion.setCodPais(consultaAptitudMifidInDto.getCodPais());
		peticion.setCodPromifid(StringUtils.rightPad(consultaAptitudMifidInDto.getCodPromifid(),Constants.COD_PROMIFID_MIN_LENGTH));
		peticion.setCodRiesgopr(StringUtils.rightPad(consultaAptitudMifidInDto.getCodRiesgopr(),Constants.COD_RIESGO_MIN_LENGTH));
		peticion.setCodSubfammf(StringUtils.rightPad(consultaAptitudMifidInDto.getCodSubfammf(),Constants.COD_SUBFAMILIA_MIN_LENGTH));
		peticion.setFopOperacio(StringUtils.rightPad(consultaAptitudMifidInDto.getFopOperacio(),Constants.COD_FOP_OPERACIO_MIN_LENGTH));
		peticion.setXtiTipovent(StringUtils.rightPad(consultaAptitudMifidInDto.getXtiTipovent(),Constants.XTI_VARS_MIN_LENGTH));
		peticion.setCodIdioma(consultaAptitudMifidInDto.getCodIdioma());
		return peticion;
	}

}
